package com.ruoyi.system.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.TaskLineMapper;
import com.ruoyi.system.domain.TaskLine;
import com.ruoyi.system.service.ITaskLineService;

/**
 * 测评任务明细Service业务层处理
 * 
 * @author ruoyi
 * @date 2024-05-19
 */
@Service
public class TaskLineServiceImpl implements ITaskLineService 
{
    @Autowired
    private TaskLineMapper taskLineMapper;

    /**
     * 查询测评任务明细
     * 
     * @param id 测评任务明细主键
     * @return 测评任务明细
     */
    @Override
    public TaskLine selectTaskLineById(Long id)
    {
        return taskLineMapper.selectTaskLineById(id);
    }

    /**
     * 查询测评任务明细列表
     * 
     * @param taskLine 测评任务明细
     * @return 测评任务明细
     */
    @Override
    public List<TaskLine> selectTaskLineList(TaskLine taskLine)
    {
        taskLine.setExclude(SecurityUtils.getUserId());
        return taskLineMapper.selectTaskLineList(taskLine);
    }

    @Override
    public List<TaskLine> selectMyTaskLineList(TaskLine taskLine) {
        taskLine.setUserId(SecurityUtils.getUserId());
        return taskLineMapper.selectTaskLineList(taskLine);
    }

    /**
     * 新增测评任务明细
     * 
     * @param taskLine 测评任务明细
     * @return 结果
     */
    @Override
    public int insertTaskLine(TaskLine taskLine)
    {
        taskLine.setCreateTime(DateUtils.getNowDate());
        return taskLineMapper.insertTaskLine(taskLine);
    }

    /**
     * 修改测评任务明细
     * 
     * @param taskLine 测评任务明细
     * @return 结果
     */
    @Override
    public int updateTaskLine(TaskLine taskLine)
    {
        taskLine.setUpdateTime(DateUtils.getNowDate());
        return taskLineMapper.updateTaskLine(taskLine);
    }

    /**
     * 批量删除测评任务明细
     * 
     * @param ids 需要删除的测评任务明细主键
     * @return 结果
     */
    @Override
    public int deleteTaskLineByIds(Long[] ids)
    {
        return taskLineMapper.deleteTaskLineByIds(ids);
    }

    /**
     * 删除测评任务明细信息
     * 
     * @param id 测评任务明细主键
     * @return 结果
     */
    @Override
    public int deleteTaskLineById(Long id)
    {
        return taskLineMapper.deleteTaskLineById(id);
    }
}
